@import 'libs/vars'; @import 'libs/functions'; @import 'libs/mixins'; @import url("http://fonts.googleapis.com/css?family=Source+Sans+Pro:300,900"); @import url("font-awesome.min.css"); /* Aerial by HTML5 UP html5up.net | @ajlkn Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) */ @mixin gradient-text($gradient, $bg : 'light') { @supports(mix-blend-mode: lighten) { display: inline-block; position: relative; &::before { content: ''; display: block; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: unquote($gradient); pointer-events: none; } @if ($bg == 'light') { color: #000; background: #fff; mix-blend-mode: multiply; &::before { mix-blend-mode: screen; } } @else { color: #fff; background: #000; mix-blend-mode: lighten; &::before { mix-blend-mode: multiply; } } } } section.light { background: #eee; .gradient1 { @include gradient-text('linear-gradient(to right,#23966c, #faaa54, #e23b4a, #db0768, #360670)', 'light'); } .gradient2 { @include gradient-text('radial-gradient(circle, #23966c, #faaa54, #e23b4a, #db0768, #360670)', 'light'); } } section.dark { background: #222; .gradient1 { color: #fff; // Fallback color @include gradient-text('linear-gradient(to right,#23966c, #faaa54, #e23b4a, #db0768, #360670)', 'dark'); } .gradient2 { color: #fff; @include gradient-text('radial-gradient(circle, #23966c, #faaa54, #e23b4a, #db0768, #360670)', 'dark'); } } /* Page styling, ignore */ body { margin: 0; font-family: "Lato", sans-serif; text-align: center; } section { min-height: 50vh; padding: 2em; } .gradient1 { font-size: 96px; margin: 0.5em; opacity: 0.9; } .gradient2 { text-align: center; margin: 1em auto; width: 10em; } @import "libs/skel"; @include skel-breakpoints(( wide: '(max-width: 1680px)', normal: '(max-width: 1280px)', mobile: '(max-width: 736px)', mobilep: '(max-width: 480px)' )); @include skel-layout(( reset: 'full', boxModel: 'border' )); @mixin bg($width) { @include keyframes('bg') { 0% { @include vendor('transform', 'translate3d(0,0,0)'); } 100% { @include vendor('transform', 'translate3d(#{$width * -1},0,0)'); } } #bg { background-size: $width auto; width: ($width * 3); } } $delay-wrapper: _duration(wrapper) - 1s; $delay-overlay: $delay-wrapper - 0.5s; $delay-header: $delay-overlay + _duration(overlay) - 0.75s; $delay-nav-icons: $delay-header + _duration(header) - 1s; $delay-nav-icon: 0.25s; /* Basic */ body, input, select, textarea { color: _palette(fg); font-family: 'Source Sans Pro', sans-serif; font-size: 15pt; font-weight: 300 !important; letter-spacing: -0.025em; line-height: 1.75em; } body { background: _palette(bg); overflow: hidden; &.loading{ * { @include vendor('animation', 'none !important'); } } } a { @include vendor('transition', 'border-color 0.2s ease-in-out'); border-bottom: dotted 1px; color: inherit; outline: 0; text-decoration: none; &:hover { border-color: transparent; } } /* Icon */ .icon { @include icon; position: relative; > .label { display: none; } } /* Wrapper */ @include keyframes('wrapper') { 0% { opacity: 0; } 100% { opacity: 1; } } #wrapper { @include vendor('animation', 'wrapper #{_duration(wrapper)} forwards'); height: 100%; left: 0; opacity: 0; position: fixed; top: 0; width: 100%; } /* BG */ #bg { @include vendor('animation', 'bg #{_duration(bg)} linear infinite'); @include vendor('backface-visibility', 'hidden'); @include vendor('transform', 'translate3d(0,0,0)'); /* Set your background with this */ background: _misc(bg); background-repeat: repeat-x; height: 100%; left: 0; opacity: 1; position: fixed; top: 0; } @include bg(_misc(bg-width) * 1.5); /* Overlay */ @include keyframes('overlay') { 0% { opacity: 0; } 100% { opacity: 1; } } #overlay { @include vendor('animation', 'overlay #{_duration(overlay)} #{$delay-overlay} forwards'); background-attachment: fixed, fixed; background-image: url('images/overlay-pattern.png'), url('images/overlay.svg'); background-position: top left, center center; background-repeat: repeat, no-repeat; background-size: auto, cover; height: 100%; left: 0; opacity: 0; position: fixed; top: 0; width: 100%; } /* Main */ #main { height: 100%; left: 0; position: fixed; text-align: center; top: 0; width: 100%; &:before { content: ''; display: inline-block; height: 100%; margin-right: 0; vertical-align: middle; width: 1px; } } /* Header */ @include keyframes('header') { 0% { @include vendor('transform', 'translate3d(0,1em,0)'); opacity: 0; } 100% { @include vendor('transform', 'translate3d(0,0,0)'); opacity: 1; } } @include keyframes('nav-icons') { 0% { @include vendor('transform', 'translate3d(0,1em,0)'); opacity: 0; } 100% { @include vendor('transform', 'translate3d(0,0,0)'); opacity: 1; } } #header { @include vendor('animation', 'header #{_duration(header)} #{$delay-header} forwards'); @include vendor('backface-visibility', 'hidden'); @include vendor('transform', 'translate3d(0,0,0)'); cursor: default; display: inline-block; opacity: 0; position: relative; text-align: center; top: -1em; vertical-align: middle; width: 90%; h1 { font-size: 4.35em; font-weight: 900; letter-spacing: -0.035em; line-height: 1em; } p { font-size: 1.25em; margin: 0.75em 0 0.25em 0; opacity: 0.75; } nav { margin: 1.5em 0 0 0; li { @include vendor('animation', 'nav-icons #{_duration(nav-icons)} ease-in-out forwards'); @include vendor('backface-visibility', 'hidden'); @include vendor('transform', 'translate3d(0,0,0)'); display: inline-block; height: _size(nav-icon-wrapper); line-height: _size(nav-icon-wrapper) * 1.1; opacity: 0; position: relative; top: 0; width: _size(nav-icon-wrapper); @for $x from 1 through 10 { &:nth-child(#{$x}) { @include vendor('animation-delay', ($delay-nav-icons + ($x * $delay-nav-icon)) + ''); } } } a { -webkit-tap-highlight-color: rgba(0,0,0,0); -webkit-touch-callout: none; border: 0; display: inline-block; &:before { @include vendor('transition', 'all 0.2s ease-in-out'); border-radius: 100%; border: solid 1px _palette(fg); display: block; font-size: _size(nav-icon); height: 2.5em; line-height: 2.5em; position: relative; text-align: center; top: 0; width: 2.5em; } &:hover { font-size: 1.1em; &:before { background-color: _palette(nav-icon, hover-bg); color: _palette(nav-icon, hover-fg); } } &:active { font-size: 0.95em; background: none; &:before { background-color: _palette(nav-icon, active-bg); color: _palette(nav-icon, active-fg); } } span { display: none; } } } } /* Footer */ #footer { @include vendor('background-image', 'linear-gradient(top, rgba(0,0,0,0), rgba(0,0,0,0.5) 75%)'); bottom: 0; cursor: default; height: 6em; left: 0; line-height: 8em; position: absolute; text-align: center; width: 100%; } /* Wide */ @include breakpoint(wide) { /* Basic */ body, input, select, textarea { font-size: 13pt; } /* BG */ @include bg(_misc(bg-width)); } /* Normal */ @include breakpoint(normal) { /* Basic */ body, input, select, textarea { font-size: 12pt; } /* BG */ @include bg(_misc(bg-width) * 0.5); } /* Mobile */ @include breakpoint(mobile) { /* Basic */ body { min-width: 320px; } body, input, select, textarea { font-size: 11pt; } /* BG */ @include bg(_misc(bg-width) * 0.2); /* Header */ #header { h1 { font-size: 2.5em; } p { font-size: 1em; } nav { font-size: 1em; a { &:hover { font-size: 1em; } &:active { font-size: 1em; } } } } } /* Mobile (Portrait) */ @include breakpoint(mobilep) { /* BG */ @include bg(_misc(bg-width) * 0.275); /* Header */ #header { nav { padding: 0 1em; } } }